package com.jiantong.lawEnforcing.service;

import com.jiantong.lawEnforcing.dto.SimplenessCasesDto;
import com.jiantong.lawEnforcing.model.SimplenessCases;
import io.terminus.common.model.Paging;
import io.terminus.common.model.Response;

/**
 * 当场处罚决定书
 * Created by mz03 on 2017/8/14.
 */
public interface SimplenessCasesService {


    /**
     * id 查找
     * @param id
     * @return News
     */
    Response<SimplenessCases> finById(Long id);


    /**
     * id 查找 DTO
     * @param id
     * @return
     */
    Response<SimplenessCasesDto> findSimplenessCasesDto(Long id);


    /**
     * id 查找 DTO
     * @param cases_basic_id
     * @return
     */
    Response<SimplenessCasesDto> findByCases_basic_id(Long cases_basic_id);


    /**
     * 创建新闻新单据
     * @param simplenessCases 单据对象
     * @return 主键 id
     */
    Response<Long> create(SimplenessCases simplenessCases);



    /**
     * 更新新闻的单据
     * @param simplenessCases 单据对象
     * @return true or false
     */
    Response<Boolean> update(SimplenessCases simplenessCases);


    /**
     * 分页查询
     * @param pageNo
     * @param pageSize
     * @param status
     * @param cause_action
     * @param cases_source
     * @param parties_type
     * @param name
     * @return
     */
    Response<Paging<SimplenessCases>> pagingByStatus(
            Integer pageNo,
            Integer pageSize,
            Integer status,
            String cause_action,
            Integer cases_source,
            Integer parties_type,
            String name
    );


    /**
     * 根据状态分页查询
     * @param pageNo
     * @param pageSize
     * @param status
     * @return
     */
    Response<Paging<SimplenessCasesDto>> pagingSimplenessCasesDto(Integer pageNo, Integer pageSize, Integer status,
                                                                  String cause_action,
                                                                  Integer cases_source,
                                                                  Integer parties_type,
                                                                  String name);

}
